package com.qzsoft.system.modules.permission.rolebusiness.dto;


import com.alibaba.fastjson.annotation.JSONField;
import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.datatype.jsr310.deser.LocalDateDeserializer;
import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateSerializer;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.*;

import java.time.LocalDate;

/**
 * 用户的业务角色(审批角色)(SysUserRoleBusiness)表实体类
 *
 * @author lihuajun
 * @since 2020-09-24 14:53:49
 */
@ApiModel(value ="用户的业务角色(审批角色)")
@Data
@EqualsAndHashCode(callSuper=false)
@NoArgsConstructor
@AllArgsConstructor
@Builder
@ToString
public class SysUserRoleBusinessDTO {
    private static final long serialVersionUID = 716038085997206712L;
                                        
   /**
    * id
    */
    @ApiModelProperty(value = "id")
    private String id;
                                            
   /**
    * 用户id
    */
    @ApiModelProperty(value = "用户id")
    private String userId;

    /**
     * 用户账号
     */
    @ApiModelProperty(value = "用户账号")
    @TableField(exist = false)
    private String username;
                                            
   /**
    * 机构id
    */
    @ApiModelProperty(value = "机构id")
    private String deptId;
                                            
   /**
    * 机构主键
    */
    @ApiModelProperty(value = "机构主键")
    private String deptPkid;
                                            
   /**
    * 机构名字
    */
    @ApiModelProperty(value = "机构名字")
    private String deptName;
                                            
   /**
    * 单位id
    */
    @ApiModelProperty(value = "单位id")
    private String companyId;
                                            
   /**
    * 单位pkid
    */
    @ApiModelProperty(value = "单位pkid")
    private String companyPkid;
                                            
   /**
    * 单位名字
    */
    @ApiModelProperty(value = "单位名字")
    private String companyName;
                                            
   /**
    * 业务角色id
    */
    @ApiModelProperty(value = "业务角色id")
    private String roleBusinessId;
                                            
   /**
    * 业务角色名字
    */
    @ApiModelProperty(value = "业务角色名字")
    private String roleBusinessName;
                                            
   /**
    * 排序
    */
    @ApiModelProperty(value = "排序")
    private Integer orderId;
                                            
   /**
    * 创建者
    */
    @ApiModelProperty(value = "创建者")
    private Integer creator;
                                            
   /**
    * 创建时间
    */
	@JSONField(format="yyyy-MM-dd")
    @JsonFormat(shape=JsonFormat.Shape.STRING, pattern="yyyy-MM-dd")
    @JsonSerialize(using = LocalDateSerializer.class)
    @JsonDeserialize(using = LocalDateDeserializer.class)
    @ApiModelProperty(value = "创建时间")
    private LocalDate createDate;
                                            
   /**
    * 更新者
    */
    @ApiModelProperty(value = "更新者")
    private Integer updater;
                                            
   /**
    * 更新时间
    */
	@JSONField(format="yyyy-MM-dd")
    @JsonFormat(shape=JsonFormat.Shape.STRING, pattern="yyyy-MM-dd")
    @JsonSerialize(using = LocalDateSerializer.class)
    @JsonDeserialize(using = LocalDateDeserializer.class)
    @ApiModelProperty(value = "更新时间")
    private LocalDate updateDate;
    
}